package com.education.welco.pojo;

import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;
import java.util.Objects;

/**
 * pc 达人圈 优质论坛评论实体
 *
 * @author ZJZ
 */
public class SCommentResq {
    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    //是否置顶 0 未置顶 1 已置顶
    private Integer state;
    /**
     * 论坛评论id
     */
    private String commentId;
    /**
     * 用户id
     */
    private String userId;

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    /**
     * 用户头像
     */
    private String userIco;

    public String getPlLevel() {
        return plLevel;
    }

    public void setPlLevel(String plLevel) {
        this.plLevel = plLevel;
    }

    /**
     * 用户评论级别(一级OR二级)
     */
    private String plLevel;
    /**
     * 用户昵称
     */
    private String nickname;
    /**
     * 评论日期 yyyy-MM-dd
     */
    @DateTimeFormat
    private Date commentDate;
    private String commentDateStr;
    /**
     * 评论内容
     */
    private String commentText;
    private String originalText;
    /**
     * 论坛标题
     */
    private String forumTitle;
    private Integer forumId;
    private Integer forumType;
    /**
     * 是否点赞 1 是 2 否
     */
    private String isLike;
    /**
     * 是否举报 1 是 2 否
     */
    private String isReport;
    /**
     * 点赞数
     */
    private String likeNum;
    /**
     * 评论数
     */
    private String commentNum;
    /**
     * 动态id 或者 评论id
     */
    private Integer postId;
    /**
     * 评论的二级评论列表
     */
    private List<SCommentResq> list;
    /**
     * 评论创建时间
     */
    private Date createTime;


    public String getOriginalText() {
        return originalText;
    }

    public void setOriginalText(String originalText) {
        this.originalText = originalText;
    }

    public Integer getForumId() {
        return forumId;
    }

    public void setForumId(Integer forumId) {
        this.forumId = forumId;
    }

    public Integer getForumType() {
        return forumType;
    }

    public void setForumType(Integer forumType) {
        this.forumType = forumType;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Integer getPostId() {
        return postId;
    }

    public void setPostId(Integer postId) {
        this.postId = postId;
    }

    public String getCommentId() {
        return commentId;
    }

    public void setCommentId(String commentId) {
        this.commentId = commentId;
    }

    public String getUserIco() {
        return userIco;
    }

    public void setUserIco(String userIco) {
        this.userIco = userIco;
    }

    public String getNickname() {
        return nickname;
    }

    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    public Date getCommentDate() {
        return commentDate;
    }

    public void setCommentDate(Date commentDate) {
        this.commentDate = commentDate;
    }

    public String getCommentDateStr() {
        return commentDateStr;
    }

    public void setCommentDateStr(String commentDateStr) {
        this.commentDateStr = commentDateStr;
    }

    public String getCommentText() {
        return commentText;
    }

    public void setCommentText(String commentText) {
        this.commentText = commentText;
    }

    public String getForumTitle() {
        return forumTitle;
    }

    public void setForumTitle(String forumTitle) {
        this.forumTitle = forumTitle;
    }

    public String getIsLike() {
        return isLike;
    }

    public void setIsLike(String isLike) {
        this.isLike = isLike;
    }

    public String getIsReport() {
        return isReport;
    }

    public void setIsReport(String isReport) {
        this.isReport = isReport;
    }

    public String getLikeNum() {
        return likeNum;
    }

    public void setLikeNum(String likeNum) {
        this.likeNum = likeNum;
    }

    public String getCommentNum() {
        return commentNum;
    }

    public void setCommentNum(String commentNum) {
        this.commentNum = commentNum;
    }

    public List<SCommentResq> getList() {
        return list;
    }

    public void setList(List<SCommentResq> list) {
        this.list = list;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        SCommentResq that = (SCommentResq) o;
        return Objects.equals(commentId, that.commentId) && Objects.equals(userIco, that.userIco) && Objects.equals(nickname, that.nickname) && Objects.equals(commentDate, that.commentDate) && Objects.equals(commentDateStr, that.commentDateStr) && Objects.equals(commentText, that.commentText) && Objects.equals(forumTitle, that.forumTitle) && Objects.equals(isLike, that.isLike) && Objects.equals(isReport, that.isReport) && Objects.equals(likeNum, that.likeNum) && Objects.equals(commentNum, that.commentNum) && Objects.equals(postId, that.postId) && Objects.equals(list, that.list) && Objects.equals(createTime, that.createTime);
    }

    @Override
    public int hashCode() {
        return Objects.hash(commentId, userIco, nickname, commentDate, commentDateStr, commentText, forumTitle, isLike, isReport, likeNum, commentNum, postId, list, createTime);
    }

    @Override
    public String toString() {
        return "SysForumsCommentResq{" +
                "commentId='" + commentId + '\'' +
                ", userIco='" + userIco + '\'' +
                ", nickname='" + nickname + '\'' +
                ", commentDate=" + commentDate +
                ", commentDateStr='" + commentDateStr + '\'' +
                ", commentText='" + commentText + '\'' +
                ", forumTitle='" + forumTitle + '\'' +
                ", isLike='" + isLike + '\'' +
                ", isReport='" + isReport + '\'' +
                ", likeNum='" + likeNum + '\'' +
                ", commentNum='" + commentNum + '\'' +
                ", postId=" + postId +
                ", list=" + list +
                ", createTime=" + createTime +
                '}';
    }
}
